Method and system for processing print data, whilst restaining tab alignment

ABSTRACT

In a method and system for processing print data, whereby the print data are displayed on a display device before printing, the print data are displayed together with a check device (reticule) that is displaceable at the display device. Both the print data as well as the check device are thereby processed as transparent layers in a browser, whereby the check device is a dynamic element. The method and the system make it possible to check the print data of a print job that is divided into a plurality of pages in view of their registration precision or, respectively, in-register quality both by pages as well as within a page.

[0001] The invention is directed to a method and a system for processing print data. It is particularly directed to system for processing larger print jobs wherein a print job comprises a plurality of documents and/or pages. It is therefore suited for application in print production environments as occur in larger computer centers or in what is referred to as the “printing on demand” (PoD) market. Such print production systems are described, for example, in the publication Das Druckerbuch, edited by Dr. Gerd Goldmann, Óce Printing Systems GmbH, Edition 4a, May 1999 (ISBN 3-00-001019-x), pages 12-1 through 12-17. Pages 12-9 through 12-11 in this publication describe what is referred to as a print job manager with which print jobs (job tickets) can be generated in an arbitrary computer (client PC) linked to a computer network, and the print jobs generated in this way can be transmitted to a system component (order distribution system) for further-processing and ultimate printout.

[0002] During the course of processing a print job (job) that precedes the actual printing event on a printer device, it is often desirable to check the printed result in advance (what is referred to as a preview). U.S. Pat. No.5,963,641 discloses for processing print data the satisfies this desire.

[0003] The preview function becomes especially important in network-based print production environments wherein a plurality of user terminals (client PCs) are connected to a shared network, as are one or more print servers that administer print data generated by the users or by a host printer and forward them to one or more high-performance printers. This is especially true of print data streams wherein the print data is [sic] composed of a plurality of data sources, for example of a variable data stream and of static resource data to be integrated therein. Examples of such data streams are what is referred to as the advanced function presentation data stream (AFPDS) or the mixed object documents contents architecture data stream (MO:DCA).

[0004] The AFPDS data stream as well as an image viewer suitable therefor are described, for example, in documentation number S54405285-00 of International Business Machines Corporation (IBM) bearing the title “AFP Convertion [sic] and Index Facility (ACIF) Users Guide”. The MO:DCA data stream is described, for example, in IBM document number SC31-6802-04 bearing the title “Mixed Object Document Content Architecture Reference”.

[0005] Networked devices are being increasingly utilized in printing processes, and the devices are driven or monitored by means of standard computer programs such as, for example, known browser programs. Such Internet browsers are, for example, the Microsoft Internet Explorer® operating under the Windows operating system, the Netscape Navigator® or the browser Opera that can also be employed under the Linux operating system. Such browser programs are often included in the standard package of personal computers and are thus available at nearly every newer type of personal computer.

[0006] The Netscape Navigator browser supports what is referred to as a layer technique programmable in the JavaScript programming language. The object layer that lies below the document object in the JavaScript® object hierarchy thereby provides the possibility of obtaining access to all layers that are defined in an HTML datafile.

[0007] A new layer object is automatically generated when the browser program encounters a layer in the HTML datafile.

[0008] Layers can be addressed in various ways with JavaScript®, for example with the commands

[0009] “document.layers[#].Property=Value”

[0010] “document.layers[#].Method ()”

[0011] “Color=document.layers [0] .bgColor”

[0012] “document.LayerName.Property=Value

[0013] “document.LayerName.Method()” and

[0014] “Color=document.Headerarea.bgColor”

[0015] A layer can thereby be addressed with an index number and “document.layers”. Which layer in the datafile is to be called follows this in brackets. Each layer that was noted in HTML with the <layer>-tag or with the <ilayer>-tag counts. The layers can also be addressed with “document.LayerName” and the name can be indicated that was specified in the attribute “name=” in the introductory <layer>/<ilayer>-tag in the definition of the graphic.

[0016] Further details about this layer technique are described, for example, in the Internet page http://www.teamone.de/selfaktuell/ and in the book “SELFHTML: Version 7.0 of Apr. 27, 1998” by Stefan Münz that can be ordered via the above Internet address.

[0017] The aforementioned publications and patents are herewith incorporated by reference into the present specification.

[0018] When processing print jobs, PoD applications demand that successive pages of a document be printed exactly registered, particularly when producing bound brochures.

[0019] An object of the invention is to offer a method and a system with which a page-by-page, exactly registered printing is enabled.

[0020] This object is achieved by the invention recited in the independent claims. Advantageous embodiments of the invention are the subject matter of the subclaims.

[0021] Inventively, the print data to be processed for a print job are displayed on a display device before the printing. The print data are thereby displayed together with a check device that is displaceable on the display device. The display thereby ensues with a browser program such as, for example, Netscape Navigator that supports the aforementioned layer technique. The invention can thus be advantageously used in a broad scope without major outlay.

[0022] In a preferred exemplary embodiment of the invention, the data are already present in a rastered print data format such as, for example, MO:DCA, TIF, JPG or IOCA in which they are later supplied to a printer device for printing. In particular, both these print data as well as the check device in the browser are processed as transparent layers in a browser. The invention is based on the perception that dynamic elements can be generated in browsers with such layers and that such elements can be employed as check device when processing print data.

[0023] In particular, the check device is a reticule that comprises two lines arranged along axes residing perpendicular to one another that can be dynamically displaced independently of one another respectively parallel to the other axis and whose positions along the respectively other axis can be respectively fixed independently of one another. Each of the two lines thus represents a sub-element of the check device (reticule). It is thereby advantageous when each of these sub-elements is processed in the browser as a separate layer. The lines of the reticule are displayed, in particular, in a graphic mode that contrasts with the other display areas, for example in color (red).

[0024] The invention, in particular, makes it possible to check the print data of a print job that is divided into a plurality of pages page-by-page and to also check them within a page in view of their exact registration or, respectively, whether they are in-register. To that end, the check device (reticule) is positioned and fixed at a position prescribed by the edge of the displayed print data. The next [page] or, respectively, the following pages are then displayed and their position relative to the fixed check device is determined. When a discrepancy derives, for example a spacing between the fixed check device and the following pages, then corresponding correction measures can be initiated, for example correction values for shifting print pages can be input or a shift value (shift) with which the later printing is controlled can be determined by undoing the fixing of the positioning means or, respectively, dynamic element and subsequent re-positioning of the check device corresponding to the following page. It is especially advantageous for this purpose when the position of the check device on the display device is automatically acquired in a coordinate system and the coordinate values corresponding to the position are stored.

[0025] Further details and exemplary embodiments of the invention are described in greater detail below on the basis of a few Figures.

[0026] Shown are:

[0027]FIG. 1 a print production environment;

[0028]FIG. 2 a program structure;

[0029]FIG. 3 a load picture screen menu;

[0030]FIG. 4 a start picture screen menu;

[0031]FIG. 5 a first document display;

[0032]FIG. 6 a second document display; and

[0033]FIG. 7 a system structure.

[0034]FIG. 1 shows a print production environment wherein one of several user computers 2, a print server 3, a printer device 4 and a separate print data source 5 (host computer) are connected via a computer network such as, for example, a local area network (LAN) or a wide area network (WAN). The user computer 2 communicates, in particular, with the print server 3 via a specific connection software such as, for example, the PRISMA+POD software described on pages 12-1 through 12-17 in the above-cited OCE-Druckerbuch that runs under the PRISMA PRO system.

[0035] Among other things, a browser software 6 (Netscape Communicator) is installed on the user PC 2 for this purpose.

[0036] The browser software 6 thereby communicates with the print job manager 7, the PRISMA+POD software.

[0037] Print data that were fetched from the print server 3 or the host computer 5 by the print job manager can thereby be intermediately stored in a further memory area 8 of the user computer 2.

[0038] The user computer 2 also comprises a picture screen 7 as well as a mouse 8 employed for the input control.

[0039]FIG. 2 shows how the browser software 7 collaborates with a software “PDVView.js” 9 programmed under JavaScript® whose listing is appended to the end of the specification as Appendix 1.

[0040] This JavaScript program 9 has recourse, first, to the HTML code “PDVViewControl.Html” 10 as well as to the HTML code “PDVViewImage.Html” 11 that are appended as Appendices 2 and 3. HTML means hyper text markup language, and reticule references are defined as “Grid” in the listings; the layer-related definitions and functions can likewise be clearly seen.

[0041]FIG. 7 shows essential system components and the corresponding executive sequence that are used during the course of producing, further-processing and printing out a document.

[0042] In a memory domain 70 that, for example, are [sic] in the print server 3 (FIG. 1) or distributed, too, over a plurality of computers in the network, the objects 72, 73 generated in the client PC 2 by means of a user program 71 such as, for example, a text processing program can be transmitted by means of an upload storage event from the client PC 2 into the corresponding storage computer and can be stored thereat. To that end, the memory domain 70 comprises one or more upload lists 74 as well as a library 75 for print datafiles (print file library) in which print jobs that have already been finished are stored. In particular, the storing thereby ensues on a permanent storage such as a hard disk of the print server 3.

[0043] After the datafiles 72, 73 produced in the program 71 have been entered into the upload list and deposited there in the memory areas 72 a, 73 a, the print job manager software 7 can unite these to a complete print job and store them in the print file library 75 as job datafile 75 a by actuating the key 26 (see FIG. 3). This ensues in an event 126.

[0044] Alternatively to the storing 126, a datafile contained in the upload list 74 can also be both stored in the print file library 75 as well as supplied to the printer 4 for the prin??tout [sic] in the event 127 by actuating the button 27. Printing from the upload list 74 corresponding to the method execution 128 is also possible via button 28 (see FIG. 3).

[0045] A document datafile 75 a stored in the library 75 (print file library) can be transmitted to the client PC 2 in a transmission event 129 by actuating the button 61 (see FIG. 4). Before the transmission, a check is carried out to see whether the datafile 75 a is present in a rastered data format such as IOCA, TIF, GIF or JPG that can be displayed by the browser 6. When this is not the case, for example when the datafile stored in the library 75 is coded in an AFP, PCL of PostScript format, a raster module 76 converts it into a predetermined, rastered format such as, for example, JPG before it can be transmitted to the client PC 5 or be displayed by the browser. The datafile transmitted or, respectively, converted in this way is then displayed with the browser 6 (see FIGS. 5 and 6).

[0046] For printing according to the events 127 and 128, the data transmitted from the upload list 24 to the printer 4 are offered in a data format that is matched to the data formats that can be processed by the printer, for example in the format AFP, PCL or PostScript.

[0047]FIG. 3 shows a display window 15 that is displayed on the picture screen 17 of the user computer 2 after calling the browser software 6 and the print job manager (PJM) software 7. In its upper area 16, the window 15 thereby has the typical features of an Internet browser, namely the Netscape menu line with functions such as “datafile”, “process” as well as “refresh”, as well as the indication of the currently called http network address in the field 19.

[0048] A selection can thereby be made in the selection field 25 as to whether the datafiles stored in the upload list 74 or the datafiles stored in the library 75 are to be displayed in the selection list 21. In the condition shown in FIG. 3, the datafiles of the upload list 74 are displayed in the list 21.

[0049] On the one hand, properties of a datafile activated in the upload area are indicated in the area 114 (description), for example its format “PS” for a PostScript datafile. On the other hand, desired printing parameters are displayed in the area 14 and can be selected, for example the number of copies per printout or the type of output, simplex/duplex printing.

[0050] The output in datafile (store) and/or the output to a printer (print) can be started with the buttons 26, 27 and 28.

[0051]FIG. 4 shows the display window 15 in a condition that is reached after the load event started in FIG. 3. The particular “library” in field 25 thereby indicates that the list of the library 75 is displayed in the selection list 21.

[0052] Various documents in a document selection field 21 can be selected in a display area 20 of the current document “Pjmadmin.html”. Typical properties of the currently selected documents are displayed in the area 22, for instance the name, the print data language, the number of copies, the page size, layout particulars as well as imposition parameters (impositioning).

[0053] Typical particulars that are printer-specifically required for the print job such as, for example, the resolution are deposited in the area 23.

[0054] Local datafiles of the client PC 2 can be displayed and administered in the display area 14. Print documents in the permanent memory (hard disks) of the client PC 2 can thereby be sought with the button 13. The name of an existing datafile for the search can be input in the field 12. A datafile of the client PC 2 can be transmitted onto the print server 3 (upload event) with the button 24, so that this datafile appears in the upload list 74.

[0055]FIG. 5 shows how a document loaded into the browser (Netscape Navigator) is displayed and how the display is controlled with the JavaScript module “PDVView.js” 9 (Appendix 1). The document is thereby presented region-by-region, for example page-by-page, in a display region 31 of the display window 30. This display is controlled by the program “PDVViewImage.html” 11 (Appendix 3).

[0056] The datafiles loaded in this way (for example, the datafile “Frame/A4.ps”) are available in a rastered format (JPG) in the browser, whereby it is assured that the displayed information are identical pixel-by-pixel to the information that arises in the print image when the same datafile is printed out.

[0057] The viewer-specific menu line 32 is displayed in a display area lying above the display area 31. The display in the document display area 31 can thereby be modified via a plurality of control functions. First an upward or downward movement within the document can be accomplished in the document via the scroll bar 33 or the arrow keys 34, 35 belonging thereto, as is customary in a standard browser.

[0058] Another possibility of modifying the display of the document in the area 31 is to roam in the document with the arrow keys 36 (to the start of the document), 37 (up), 38 (down) and 39 (to the end of the document). Further, a specific page number can be input in the input field 40 in order to proceed directly to a specific page. The zoom factor with which the document is displayed in the area 31 can be specified in the field 41.

[0059] After pressing the viewer button 61 (FIG. 4), the display window 30 with the menu line 32 and the currently loaded document is displayed in the region 31 in the browser 7 or, respectively, in the display module 9 (viewer). The text 43 of page 1 of the document is thereby shown in FIG. 5; the text or, respectively, the information of page 2 of the currently loaded document is displayed in FIG. 6.

[0060] By pressing the button 45, the reticule 46 can be selectively mixed in or blanked out within the display area 31. The reticule 46 is thereby composed of a vertical line 47 and of a horizontal line 48.

[0061] The reticule is not visible when the image viewer (viewer 9) is initially started. It is turned on (activated) by actuating the button 45 and appears visible in the upper left corner of the display area 31. This corner defines the origin coordinates (X, Y)=(0, 0) within a coordinate system. The current coordinates of the reticule are thereby displayed in the browser status line 60 in two display fields 49 for the horizontal X-coordinate and 50 for the vertical Y-coordinate. The menu line 32 is thereby effected and controlled by the program “PDVViewControl.html” 10 (Appendix 2).

[0062] The current coordinates of the reticule can be retained, stored and displayed in the coordinate fields 49, 50 with the marking key 51. A subsequent movement of the reticule in horizontal or vertical direction no longer modifies the X-coordinate or, respectively, Y-coordinate values in the displayed coordinate display fields until the marking key is pressed again. The stored X-coordinates or, respectively, Y-coordinates of the current reticule position are re-displayed by renewed pressing of the marking key.

[0063] The display text 43 of the document to be viewed, which is embedded in a first layer, can be seen within the display field 31. In a browser programming environment, such layers are carriers of graphic information. Differing from the graphic information in and of themselves, however, the layers are advantageously movable in browser environments. By embedding the graphic information in the layers, the information (lines of the reticule) are movable within a browser display in that the layer is moved in the browser. Dynamic elements whose position is variable are thus created within the browser environment.

[0064] In the present employment, the first layer, in which the graphic information of the document are stored, is not topically modified. A second layer, in which the vertical line 47 of the reticule 46 is stored, however, can be arbitrarily shifted in horizontal direction A within the boundaries of the document display area 31. The second line 48 of the reticule 46, which is likewise embedded in a third layer as a graphic information one pixel wide, can be arbitrarily vertically shifted along direction B in exactly the same way. The line is thereby presented by elongation from a datafile with one pixel.

[0065] In data-oriented terms, the reticule 46 is coupled with the mouse 18 (FIG. 1) and, like a notoriously known mouse pointer, is automatically moved within the display area 31 in conjunction with a movement of the mouse. The reticule 46 can be uncoupled from the mouse by means of a mouse click with the left mouse button and remains standing at the current position within the document display region.

[0066] The momentary values within the X-Y coordinates (horizontal, vertical) of the reticule 46 can be displayed in the underlying text fields 49, 50 by selecting the switch button 51. The current position of the reticule is visible in the status bar 60 of the browser.

[0067] To this end, the reticule must be visible and fixed. When the reticule 46—after it has been made mobile again with a renewed mouse click within the display field 31—is subsequently shifted again, then the displayed values in the fields 49, 50 are preserved. The coordinate values correspond to individual pixel values on the X-Y axes.

[0068] The reticule can be directly positioned to the indicated coordinate position by inputting the X-coordinates or, respectively, Y-coordinates into the fields 49, 50.

[0069] For checking the in-register nature of successive pages, it is expedient to position the reticule at a specific position, for example at X=70 and Y=494, and to then undertake a page change via one of the buttons 36, 37, 38, 39 or 40. In the comparison of FIGS. 5 and 6, for example, this is implemented with the pages 1 and 2, whereby it can be clearly seen that page 2 is positioned out-of-register relative to page 1. The horizontal distance ‘a’ between the line starts of the pages 1 and 2 can be identified by shifting the reticule 46 to the start of the text of page 2, and the plurality of pixels can be directly read in the field 49. The register correction value (difference between the two positions of pages 1 and 2) that is thereby achieved and measured in pixels can then be corrected [sic] such either automatically or by transmission onto a different system, for example into the controller of the prin??ter [sic] 4, that the in-register quality is restored in the ultimate printout.

[0070] The basis for the presentation of the reticule 46 is, on the one hand, the aforementioned layer technique and, on the other hand, two image datafiles with a respective, specifically identified [. . .] composed of a red-colored pixel for the two lines 47, 48. The lines 47, 48 that respectively extend up to the edges of the display region 31 thereby arise by elongation in respectively horizontal or, respectively, vertical direction.

[0071] It can be particularly seen when switching from FIG. 5 to FIG. 6 that the position of the reticule, i.e. the coordinates X, Y, is not modified as a result of a page change. Given fast scrolling (page change), the user can thus very quickly recognize whether there is a shift in view of the in-register quality in successive pages or, too, in pages that lie far apart.

[0072] On the other hand, the reticule is dynamically displaceable within the region 31. Such dynamic elements can be particularly realized by means of the layer technique in web browsers like the Netscape Communicator.

[0073] Exemplary embodiments of the invention have been described. It is thereby clear that a person skilled in the art could recite developments of the invention at any time. For example, dotted lines or other symbols could also be displayed instead of the reticule lines. The procedure of checking the in-register quality could also be automated, so that the reticule or the register lines are automatically modified, the correction values are automatically calculated and forwarded to a higher-ranking process controller.

[0074] The invention can be realized as a computer program as well as a computer program product or can be realized integrated in a computer and is especially advantageous, particularly in printing systems with connected print servers. It can thereby run on a server, on a client PC, a printer or another computer linked into a data network. Corresponding program datafiles can be stored on a data carrier or can be disseminated via LAN and WAN networks like the Internet.

List of Reference Characters

[0075]1 network (LAN, WAN)

[0076]2 user computer

[0077]3 print server

[0078]4 printer device

[0079]5 host computer

[0080]6 browser software

[0081]7 print job manager software

[0082]8 print data

[0083]9 program “PDVView.js”

[0084]10 program “PDVViewControl.html”

[0085]11 program “PDVViewImage.html”

[0086]12 input field for local datafiles

[0087]13 button for searching the local PC

[0088]14 display region for local datafiles

[0089]15 Netscape window

[0090]16 Netscape menu line

[0091]17 picture screen

[0092]18 mouse

[0093]19 current WWW address

[0094]20 upload display field

[0095]21 document selection field

[0096]22 document description

[0097]23 printer-specific document particulars

[0098]24 button

[0099]25 source field

[0100]26 store button

[0101]27 store and print button

[0102]28 print button

[0103]29 upload key

[0104]30 display window

[0105]31 document display region

[0106]32 menu line

[0107]33 scroll bar

[0108]34 arrow key

[0109]35 arrow key

[0110]36 to page 1

[0111]37 arrow key (one page up)

[0112]38 arrow key (one page down)

[0113]39 to end of document (last page)

[0114]40 page input field (direct page selection)

[0115]41 zoom function

[0116]42 reticule key

[0117]43 text of page 1

[0118]44 text of page 2

[0119]45 reticule button

[0120]46 reticule

[0121]47 vertical line

[0122]48 horizontal line

[0123]49 display field for X-coordinate

[0124]50 display field for Y-coordinate

[0125]51 marking key

[0126]59 PIM server status line

[0127]60 browser status line

[0128]61 view key

[0129]70 memory domain

[0130]71 user program

[0131]7 first object

[0132]73 second object

[0133]74 upload list

[0134]75 print file library

[0135]76 raster module

[0136]114 display region for properties of the job

[0137]126 store after actuation of the button 26

[0138]127 store and print after actuation of the button 27

[0139]128 print after actuation of the button 28

[0140]129 transmission of the rastered print data after actuating the [. . . ] 

1. Method for processing print data, whereby the print data are displayed on a display device before printing, whereby the print data are displayed together with a check device (reticule) that is displaceable at the display device.
 2. Method according to claim 1, whereby the print data are present in a rastered format in which they are supplied to a printer device for printing.
 3. Method according to one of the claims 1 or 2, whereby the print data are displayed by means of a browser.
 4. Method according to one of the preceding claims, whereby the position of the check device can be fixed on the display device.
 5. Method according to one of the preceding claims, whereby the check device comprises a line.
 6. Method according to claim 5, whereby the check device is a reticule and the two axes (lines) of the reticule are displaceable independently of one another on the display device.
 7. Method according to claim 6, whereby the positions of the two axes (lines) of the reticule can be fixed independently of one another on the display device.
 8. Method according to one of the preceding claims, whereby the check device is displaced and/or fixed on the display device with an input device (mouse, track ball, touch panel).
 9. Method according to one of the preceding claims, whereby the position of the check device on the display device is automatically acquired in a coordinate system and the coordinate values (x, y) corresponding to the position are stored.
 10. Method according to one of the preceding claims, whereby the print data are processed in a first transparent layer (dynamic element, layer) and the check device (reticule) [. . . ] in at least one second transparent layer.
 11. Method according to claim 10, whereby the check device comprises a first sub-element (horizontal line) and a second sub-element (vertical line) and each sub-element is processed in a separate layer.
 12. Method according to one of the preceding claims, whereby the print data are divided into a plurality of pages and, for checking the in-register quality of successive pages, the check device (one or both axes of the reticule) is positioned and fixed at a predetermined edge position of a first page and at least one following page is then displayed together with the check device.
 13. Method according to one of the preceding claims, whereby the display of the check device can be turned off.
 14. Method according to one of the preceding claims, whereby predetermined pages of a document corresponding can be displayed with a page button (40) displayed on the display device.
 15. Method according to one of the preceding claims, whereby the check device is displayed at a predetermined position by means of values that are input or selected at a position button (51) displayed on the display device.
 16. Computer software that effects a method execution according to one of the claims 1 through 15 when loaded on a computer.
 17. Computer program product that effects a method execution according to one of the claims 1 through 15 when loaded on a computer.
 18. Computer system that effects a method execution according to one of the claims 1 through
 15. 19. Printing system comprising a computer system according to claim
 18. 